package com.wuad.platformwuad.util;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * 年龄相工具类
 */
public class AgeUtils {

    /**
     * 输入年龄获取出生年份
     *
     * @return
     */
    public static String findBrithYear(int age) {
        // 获取当前的时间
        Calendar mycalendar= Calendar.getInstance();
        // 获取年份
        int year = Integer.valueOf(mycalendar.get(Calendar.YEAR));

        int birth=year - age;
        return birth + "年出生";
    }

    /**
     * 读取身份证号获取年龄
     *
     * @param cardCode 身份证号
     * @return
     */
    public static int getAge(String cardCode) {
        try{
            // 得到年份
            String year = cardCode.substring(6,10);
            // 得到月份
            String yue = cardCode.substring(10,12);
            //得到日
            String day = cardCode.substring(12,14);
            // 得到当前的系统时间
            Date date = new Date();
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            // 当前年份
            String fyear = format.format(date).substring(0, 4);
            // 月份
            String fyue = format.format(date).substring(5, 7);
            String fday = format.format(date).substring(8, 10);
            int age = 0;
            // 当前月份大于用户出身的月份表示已过生
            if (Integer.parseInt(yue) < Integer.parseInt(fyue)) {
                age = Integer.parseInt(fyear) - Integer.parseInt(year) + 1;
            } else if (Integer.parseInt(yue) == Integer.parseInt(fyue)) {
                if (Integer.parseInt(fday) > Integer.parseInt(day)) {
                    age = Integer.parseInt(fyear) - Integer.parseInt(year) + 1;
                } else {
                    age = Integer.parseInt(fyear) - Integer.parseInt(year);
                }
            } else {
                // 当前用户还没过生
                age = Integer.parseInt(fyear) - Integer.parseInt(year);
            }
            if (age < 0) {
                age = 0;
            }
            return age;
        } catch (Exception e) {
            return 0;
        }
    }
}
